#ifndef CACHEPOLICY_H
#define CACHEPOLICY_H
namespace Cache {

template <typename Key, typename Value> class cachePolicy {
public:
    // 添加缓存
    virtual void put(Key k, Value v) = 0;

    // 探测是否访问成功，访问成功通过传出参数返回，并返回true
    virtual bool get(Key k, Value &v) = 0;

    // 重载，访问成功直接返回value
    virtual Value get(Key k) = 0;

    virtual ~cachePolicy() {}
};

} // namespace Cache

#endif